Delayed locked loop implementation in a synchronous dynamic random access memory

ABSTRACT

A clock applying circuit for a synchronous memory is comprised of a clock input for receiving a clock input signal, apparatus connected to the synchronous memory for receiving a driving clock signal, and a tapped delay line for receiving the clock input signal and for delivering the clock driving signal to the synchronous memory in synchronism with but delayed from the clock input signal, the delay being a small fraction of the clock period of the clock input signal.

This is a continuation of application Ser. No. 08/319,042, filed Oct. 6, 1994.

FIELD OF THE INVENTION

This invention relates to the field of semiconductor memories, and in particular to a circuit for applying a clock to a synchronous memory such as a synchronous dynamic random access memory (SDRAM).

BACKGROUND TO THE INVENTION

An SDRAM, shown in block diagram in FIG. 1 typically operates as follows, with reference to the signal timing diagram shown in FIG. 2. A clock input terminal 1 receives a clock input signal CLK. The remainder of the SDRAM is represented by the memory array and support circuitry block 3. The clock signal arriving at the clock input terminal 1 is buffered inside the SDRAM, represented by the receiver 5 and buffer 6, and is distributed to internal circuitry of the SDRAM.

A signal at the output of the memory array and support circuitry 3 is applied to output buffers, represented by output buffer 8, which is enabled by the clock signal to drive data onto data terminals 10 of the SDRAM. However, due to the delays caused by the internal buffering and the interconnect wire on the integrated circuit chip that distributes the clock signal, the clock signal arrives at the enable terminal of the buffers delayed from the clock input signal. This delayed clock signal is illustrated in FIG. 2 as signal ICLK.

Assuming that the system is responsive to the rising edge of the clock signal, the delay between the rising edges is shown in FIG. 2 as internal clock skew 12. This clock skew can be a significant fraction of the clock period if the part is driven with a high frequency clock. The clock skew typically determines the maximum speed of the part. As the operating frequency of the part increases, as determined by the clock frequency, the clock skew delay causes enabling of the output buffer 8 too late relative to the next rising clock edge and the valid data at the output data terminals 10 will appear too late for the receiving chip.

Prior to the present invention, there were either of two solutions used to deal with this problem: (a) making the clock buffer circuitry between the clock input terminal 1 and the output buffer circuit enable terminal as fast as possible, and (b) using a phase locked loop (PLL) to drive the enable terminal of the output buffer.

Implementing the first solution results in a limit to the operating frequency of the part. There will always be a limit to the operating frequency of the part, because there will always be significant delay associated with the clock buffer and distribution circuitry and delays introduced by parasitic resistance and capacitance of the interconnection conductors used to distribute the buffered clock signal to the output buffers, which is evident from FIG. 1. Thus as shown in FIG. 2, after the read command to the memory array circuitry 3 from the address and control input of the memory array, to output data to the output buffers 8, there must be a delay 12 until valid data is output to the data terminals 10, as indicated by the timing diagram DQ. This time is the sum of the internal clock skew from the rising edge of the clock input signal CLK to the rising edge of the delayed clock signal ICLK, and the time from the rising edge of the clock signal ICLK to the time that valid data is output on the output terminals 10 caused by the output buffer delay after it has been clocked by the ICLK signal.

The second solution provides considerable improvement over the first. An on chip oscillator is used in a phase locked loop (PLL) which is synchronized with the input clock signal. The internal clock signal can be either multiplied in frequency or adjusted to remove internal clock skew as much as possible.

A system implementing the second solution is shown in FIG. 3, and a corresponding timing diagram is shown in FIG. 4. A PLL 15 is fed by the input clock signal from receiver 5, as well as by a feedback signal on conductor 17 derived from the interconnection conductor which distributes the output buffer enable clock signal. The latter signal is received from the output of the PLL via the internal buffering circuitry represented by buffer 6.

Thus the already buffered (and delayed) clock signal is applied to the PLL and is compared with the input clock signal. Since the operation of the PLL is to synchronize the two signals, the clock signal to be distributed to the enable inputs of the output buffers, represented by the timing diagram ICLK in FIG. 4, is made as close as possible in timing to the input clock signal. The internal clock skew is thus minimized, as illustrated by skew time 19 shown in FIG. 4. Thus the output buffer is enabled much closer to the clock edge that is received by the part and valid data appears sooner relative to the clock edge, and thus allowing higher frequency operation of the part. This is shown by access time 21, which it may be seen is much shorter than access time 12 resulting from the first solution.

However it has been found that the PLL solution also suffers from problems. It is complex, requiring an on-chip oscillator with feedback control of the frequency depending on the monitored status of the on-chip oscillator relative to the input clock. It requires significant stand-by power due to its extra circuitry, and it requires considerable start-up time for the on-chip oscillator to synchronize and lock to the input clock frequency. It also requires use of an analog oscillator in a digital circuit, which requires significantly different and complex fabrication techniques.

SUMMARY OF THE INVENTION

The present invention minimizes the elapsed time between a clock edge that is input to a synchronous memory such as an SDRAM and the time at which the same clock edge eventually triggers the output buffer of the SDRAM to drive valid data onto the output terminals of the SDRAM. The present invention utilizes a delay locked loop (DLL) instead of the phase locked loop used in the second solution described above. The DLL allows higher clock frequency operation while requiring less standby current and start-up time than the system that uses the PLL. No oscillator is required as is required using the PLL, and the entire system can be fabricated using digital integrated circuit technology, rather than a mixture of analog and digital technology.

In accordance with an embodiment of the invention, a clock applying circuit for a synchronous memory is comprised of a clock input for receiving a clock input signal, apparatus connected to the synchronous memory for receiving a driving clock signal, and a tapped delay line for receiving the clock input signal and for delivering the clock driving signal to the synchronous memory in synchronism with but delayed fro the clock input signal, the delay being a small fraction of the clock period of the clock input signal. The fraction can be negligibly small.

In accordance with another embodiment, a clock applying circuit is comprised of a synchronous dynamic random access memory (SDRAM) comprised of a memory array and an output buffer connected to the memory array, the memory array having a clock input signal terminal and the output buffer having an enable terminal for receiving a driving clock signal, a clock input for receiving a clock input signal, a tapped delay line comprised of a series of delay elements and having an input, apparatus for applying the clock input signal to the clock input signal terminal and to the input of the tapped delay line, apparatus for receiving output signals of plural ones of the delay elements and for providing one of the output signals of the delay elements as the driving clock signal, apparatus for applying the driving clock signal to the enable terminal of the output buffer, and apparatus for selecting said one of the output signals having a predetermined one of the rising and falling edge time which follows a corresponding rising or falling edge of the clock input signal by a clock skew delay time of the SDRAM between said clock input signal terminal of the memory array and the output buffer.

BRIEF INTRODUCTION TO THE DRAWINGS

A better understanding of the invention will be obtained by reading the description of the invention below, with reference to the following drawings, in which:

FIGS. 1 and 3 are block diagrams illustrating prior art systems,

FIGS. 2 and 4 are timing diagrams corresponding to and used in understanding operation of the systems of FIGS. 1 and 3 respectively, and

FIG. 5 is a block diagram illustrating an embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Turning to FIG. 5, an input clock signal is applied to a tapped delay line formed of a series of delay elements 25 such as inverters. The outputs of predetermined ones of the delay elements, which can be each one of the delay elements, are provided to the inputs of a selection apparatus such as a multiplexer 27. The output of the multiplexer 29 provides a signal, referred to herein as a driving clock signal, which in this embodiment is applied to the enable terminal of the output buffer in a manner as described above with respect to the prior art systems.

A delay comparator 31 has one input that receives the input clock signal, and another input that receives the driving clock signal. The comparator 31 outputs a control signal which has a value that depends on the differential between the input clock signal and the driving clock signal. That control signal is applied to the control inputs of multiplexer 27, and determines which of the inputs to it are passed through it to output 29 and forms the driving clock signal. The value of the control signal is such that the delay between the input clock signal and the driving clock signal is minimized in the positive sense (i.e. the leading edge of the driving clock signal will always be at the same time or later than the leading edge of the input clock signal).

In this manner the output buffer of the memory will be enabled either no or a minimum time following the input clock.

In another embodiment, the feedback signal (i.e. the driving clock signal) is delayed by a delay circuit 33, referred to herein as a delay model, which use similar elements as the real circuit path taken by the input clock signal, including buffers, logic gates, interconnect conductors, etc. The result is a signal for comparison by the delay comparator 31 which is delayed by a value which tracks the real circuit's performance as operating conditions vary. It's use in a memory can allow the memory to operate at high speeds and maintains its capability as operating conditions such as temperature vary.

While the system requires some time on start-up to adapt itself to a stable operating condition, the start-up modes on most synchronous memories should be sufficient for the output buffer to receive a properly adjusted clock signal. Due to the nature of the delay locked loop, there will be a minimum frequency below which the internal function of the clock will be uncertain. If such frequencies are contemplated, external control circuitry can be used to disable the delay locked loop, such as by using a register bit which when set enables the delay locked loop and when reset disables the delay locked loop. Then the chip operates with the digital locked loop disabled, the start-up time and minimum frequency requirements will be ignored.

If the delay locked loop derived clock is used only for the output buffer, any chip mode registers can be set and data can be written to memory before the delay locked loop has adapted. If the chip enters a power down mode while retaining supply voltage levels, the last tap position can be preserved so that normal operation can be quickly re-enabled.

During a standby state of the memory, the delay locked loop can be disabled, and the delay chain settings can be maintained, as long as the power is applied, allowing the part to enter a low power mode. Upon exit from the standby state into an active state, the system will enter a faster lock since the delay chain settings are maintained.

The delay locked loop can be disabled and the regular buffered version of the system can be used as in the prior art, enabling the output buffer with the prior art form of delayed clock signal, which can allow the system to be tested or operated using a low frequency clock.

The driving clock signal can be used as the clock for the entire memory system, it can be used for only parts of the memory system and the input clock signal used for others, or can be used only to enable the output buffer with the input clock signal used for the remainder of the memory system.

The present invention is not limited for use in conjunction with an SDRAM which was used as an example, but can be used in conjunction with other synchronous memories such as synchronous static random access memories, video random access memories, synchronous graphics random access memories, synchronous read only memories. In addition, other designs of the delay locked loop may be used than the one described herein.

A person understanding this invention may now conceive of alternative structures and embodiments or variations of the above. All of those which fall within the scope of the claims appended hereto are considered to be part of the present invention. 

We claim:
 1. A clock applying circuit for a synchronous memory comprising:(a) a clock input for receiving a clock input signal, (b) means connected to the synchronous memory for receiving a driving clock signal, (c) a tapped delay line for receiving the clock input signal and for delivering said clock driving signal to the synchronous memory in synchronism with but delayed from the clock input signal, the delay being a small fraction of the clock period of the clock input signal, and (d) the delay line being comprised of a series of delay elements for carrying said clock input signal, and means for providing the driving clock signal from an output of one of the delay elements.
 2. A clock applying circuit as defined in claim 1 including means for selecting an output from said one of the delay elements.
 3. A clock applying circuit as defined in claim 2 in which the selecting means is comprised of a comparator for comparing the clock input signal with said driving clock signal and for selecting said output from said one of the delay elements based on a closest predetermined one of a rising or falling edge of a clock input signal following an enable time required at a particular enable terminal of the synchronous memory, and means for providing the driving clock signal to said particular enable terminal.
 4. A clock applying circuit as defined in claim 3 in which the selecting means is comprised of a multiplexer for receiving output signals of plural ones of the delay elements at respective inputs thereof, means for receiving an input select control signal from the comparator resulting from said comparing for selecting one of said output signals for passing through the multiplexer as the driving clock signal.
 5. A clock applying circuit for a synchronous memory comprising:(a) a clock input for receiving a clock input signal, (b) means connected to the synchronous memory for receiving a driving clock signal, (c) a tapped delay line for receiving the clock input signal and for delivering said clock driving signal to the synchronous memory in synchronism with but delayed from the clock input signal, the delay being a small fraction of the clock period of the clock input signal, the delay line being comprised of a series of delay elements for carrying said clock input signal, (d) means for selecting said output from said one of the delay elements, (e) means for providing the driving clock signal from an output of one of the delay elements, (f) the selecting means being comprised of a comparator for comparing the clock input signal with said driving clock signal and for selecting said output from said one of the delay elements based on a closest predetermined one of a rising or falling edge of the clock input signal following an enable time required at a particular enable terminal of the synchronous memory, (g) means for providing the driving clock signal to said particular enable terminal, (h) delay model means having a signal time delay simulating clock skew delay between a clock input terminal of the synchronous memory for receiving the clock input signal and said particular enable terminal, plus a delay equivalent to delays of internal buffers, and (i) an input port of the delay model means for receiving the driving clock signal and for providing a delayed driving signal to the comparator.
 6. A clock applying circuit for a synchronous memory comprising:(a) a clock input for receiving a clock input signal, (b) means connected to the synchronous memory for receiving a driving clock signal, (c) a tapped delay line for receiving the clock input signal and for delivering said clock driving signal to the synchronous memory in synchronism with but delayed from the clock input signal, the delay being a small fraction of the clock period of the clock input signal, the delay line being comprised of a series of delay elements for carrying said clock input signal, (d) means for selecting said output from said one of the delay elements, (e) means for providing the driving clock signal from an output of one of the delay elements, (f) the selecting means being comprised of a comparator for comparing the clock input signal with said driving clock signal and for selecting said output from said one of the delay elements based on a closest predetermined one of a rising or falling edge of the clock input signal following an enable time required at a particular enable terminal of the synchronous memory, (g) means for providing the driving clock signal to said particular enable terminal, (h) delay model means having a signal time delay simulating clock skew delay between a clock input terminal of the synchronous memory for receiving the clock input signal and said particular enable terminal, plus a delay equivalent to total delays of input and output buffers, and (i) an input port of the delay model means for receiving the driving clock signal and for providing a delayed driving signal to the comparator.
 7. A clock applying circuit comprising:(a) a synchronous dynamic random access memory (SDRAM) comprised of a memory array and an output buffer connected to the memory array, the memory array having a clock input signal terminal and the output buffer having an enable terminal for receiving a driving clock signal, (b) a clock input for receiving a clock input signal, (c) a tapped delay line comprised of a series of delay elements and having an input, (d) means for applying the clock input signal to the clock input signal terminal and to the input of the tapped delay line, (e) means for receiving output signals of plural ones of the delay elements and for providing one of the output signals of the delay elements as the driving clock signal, (f) means for applying said driving clock signal to the enable terminal of the output buffer, and (g) means for selecting said one of the output signals having a predetermined one of a rising and falling edge time which follows a corresponding rising or falling edge of the clock input signal by a clock skew delay time of the SDRAM between said clock input signal terminal of the memory array and the output buffer, plus a delay equivalent to delays of external buffers.
 8. A clock applying circuit comprising:(a) a synchronous dynamic random access memory (SDRAM) comprised of a memory array and an output buffer connected to the memory array, the memory array having a clock input signal terminal and the output buffer having an enable terminal for receiving a driving clock signal, (b) a clock input for receiving a clock input signal, (c) a tapped delay line comprised of a series of delay elements and having an input, (d) means for applying the clock input signal to the clock input signal terminal and to the input of the tapped delay line, (e) means for receiving output signals of plural ones of the delay elements and for providing one of the output signals of the delay elements as the driving clock signal, (f) means for applying said driving clock signal to the enable terminal of the output buffer, and (g) means for selecting said one of the output signals having a predetermined one of a rising and falling edge time which follows a corresponding rising or falling edge of the clock input signal by a clock skew delay time of the SDRAM between said clock input signal terminal of the memory array and the output buffer, plus a delay equivalent to total delays of input and output buffers.
 9. A clock applying circuit comprising:(a) a synchronous dynamic random access memory (SDRAM) comprised of a memory array and an output buffer connected to the memory array, the memory array having a clock input signal terminal for receiving a driving clock signal, (b) a clock input for receiving a clock input signal, (c) a tapped delay line comprised of a series of delay elements and having an input, (d) means for applying the clock input signal to the clock input signal terminal and to the input of the tapped delay line, (e) means for receiving output signals of plural ones of the delay elements and for providing one of the output signals of the delay elements as the driving clock signal, (f) means for applying said driving clock signal to the enable terminal of the output buffer, (g) means for selecting said one of the output signals having a predetermined one of a rising and falling edge time which follows a corresponding rising or falling edge of the clock input signal by a clock skew delay time of the SDRAM between said clock input signal terminal of the memory array and the output buffer, plus a delay equivalent to delays of external buffers, (h) the receiving and providing means being comprised of a multiplexer for receiving said output signals at input terminals thereof and for receiving control signals from said selecting means for outputting one of said output signals as said driving clock signal.
 10. A clock applying circuit comprising:(a) a synchronous dynamic random access memory (SDRAM) comprised of a memory array and an output buffer connected to the memory array, the memory array having a clock input signal terminal for receiving a driving clock signal, (b) a clock input for receiving a clock input signal, (c) a tapped delay line comprised of a series of delay elements and having an input, (d) means for applying the clock input signal to the clock input signal terminal and to the input of the tapped delay line, (e) means for receiving output signals of plural ones of the delay elements and for providing one of the output signals of the delay elements as the driving clock signal, (f) means for applying said driving clock signal to the enable terminal of the output buffer, (g) means for selecting said one of the output signals having a predetermined one of a rising and falling edge time which follows a corresponding rising or falling edge of the clock input signal by a clock skew delay time of the SDRAM between said clock input signal terminal of the memory array and the output buffer, plus a delay equivalent to total delays of input and output buffers, (h) the receiving and providing means being comprised of a multiplexer for receiving said output signals at input terminals thereof and for receiving control signals from said selecting means for outputting one of said output signals as said driving clock signal.
 11. A clock applying circuit comprising:(a) a synchronous dynamic random access memory (SDRAM) comprised of a memory array and an output buffer connected to the memory array, the memory array having a clock input signal terminal for receiving a driving clock signal, (b) a clock input for receiving a clock input signal, (c) a tapped delay line comprised of a series of delay elements and having an input, (d) means for applying the clock input signal to the clock input signal terminal and to the input of the tapped delay line, (e) means for receiving output signals of plural ones of the delay elements and for providing one of the output signals of the delay elements as the driving clock signal, (f) means for applying said driving clock signal to the enable terminal of the output buffer, (g) means for selecting said one of the output signals having a predetermined one of a rising and falling edge time which follows a corresponding rising or falling edge of the clock input signal by a clock skew delay time of the SDRAM between said clock input signal terminal of the memory array and the output buffer, (h) the receiving and providing means being comprised of a multiplexer for receiving said output signals at input terminals thereof and for receiving control signals from said selecting means for outputting one of said output signals as said driving clock signal, and (i) including a delay model means having a signal time delay simulating clock skew delay between a clock input terminal of the synchronous memory for receiving the clock input signal and said enable terminal, plus a delay equivalent to delays of external buffers, an input port of the delay model means for receiving the driving clock signal and for providing a delayed driving signal, the selecting means comprising comparing means for receiving the clock input signal and the delayed driving clock signal and for providing said control signals based on a zero or positive time differential thereof.
 12. A clock applying circuit comprising:(a) a synchronous dynamic random access memory (SDRAM) comprised of a memory array and an output buffer connected to the memory array, the memory array having a clock input signal terminal for receiving a driving clock signal, (b) a clock input for receiving a clock input signal, (c) a tapped delay line comprised of a series of delay elements and having an input, (d) means for applying the clock input signal to the clock input signal terminal and to the input of the tapped delay line, (e) means for receiving output signals of plural ones of the delay elements and for providing one of the output signals of the delay elements as the driving clock signal, (f) means for applying said driving clock signal to the enable terminal of the output buffer, (g) means for selecting said one of the output signals having a predetermined one of a rising and falling edge time which follows a corresponding rising or falling edge of the clock input signal by a clock skew delay time of the SDRAM between said clock input signal terminal of the memory array and the output buffer, (h) the receiving and providing means being comprised of a multiplexer for receiving said output signals at input terminals thereof and for receiving control signals from said selecting means for outputting one of said output signals as said driving clock signal, and (i) including a delay model means having a signal time delay simulating clock skew delay between a clock input terminal of the synchronous memory for receiving the clock input signal and said enable terminal, plus a delay equivalent to total delays of input and output buffers, an input port of the delay model means for receiving the driving clock signal and for providing a delayed driving signal, the selecting means comprising comparing means for receiving the clock input signal and the delayed driving clock signal and for providing said control signals based on a zero or positive time differential thereof. 